/******************************************************************************

	COPYRIGHT(C) JONAS 'SORTIE' TERMANSEN 2008, 2009, 2010.

	This file is part of Maxsi Engine.

	Maxsi Engine is free software: you can redistribute it and/or modify it
	under the terms of the GNU Lesser General Public License as published by
	the Free Software Foundation, either version 3 of the License, or (at your
	option) any later version.

	Maxsi Engine is distributed in the hope that it will be useful, but WITHOUT
	ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
	FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License
	for more details.

	You should have received a copy of the GNU Lesser General Public License
	along with Maxsi Engine. If not, see <http://www.gnu.org/licenses/>.

	MaxsiEngine.dll
	A general purpose C++ library for the Maxsi Technology Project.

	MaxsiArguments.h
	Reusable methods for passing arguments.

******************************************************************************/

//=============================================================================
//	TODO: This file is decrecated because it's horrible code. Just remove it
//	and everything that uses it when you spot it. It's not worth keeping
//	around.
//=============================================================================

#ifndef MaxsiArguments_H
#define MaxsiArguments_H

BeginMaxsiNamespace

//=============================================================================
//	A class to store command line arguments and parameters - Deprecated.
//	Currently only used by MaxsiDistributionProtocol (exe).
//=============================================================================
STRUCTLINK Argument
{
	char* ArgumentName;
	char* ArgumentParameter;
};

//=============================================================================
//	Useful functions for parsing command line arguments.
//=============================================================================

//=============================================================================
//	List GetArguments(int argc, char** argv);
//
//	Deprecated - Parses the command line arguments and returns a List with
//	each parameter of the port -VariableName VariableValue from the command
//	line string as the struct Argument in the List. Returns NULL upon failure.
//	Or perhaps it crashes on failure. No one really knows. Don't make it fail.
//=============================================================================
LINK	DEPRECATED	List	GetArguments(int argc, char** argv);

//=============================================================================
//	Deprecated - Gets the parameter from the List generated by GetArguments().
//=============================================================================
LINK	DEPRECATED	char*	GetArgumentParameter(List Arguments, char* ArgumentName);

EndMaxsiNamespace

#endif
